-
Notifications
You must be signed in to change notification settings - Fork 211
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade from python3.8
to python3.10
#5311
Conversation
python_3_10@71279 aka 20230602.15 vs main ewma over 20 builds from 70865 to 71259 Click to see tablemain
python_3_10
|
The SNP pipeline is failing as expected as it is building the image off |
@@ -185,7 +185,7 @@ jobs: | |||
- job: cleanup_aci | |||
displayName: "Cleanup ACI" | |||
pool: | |||
vmImage: ubuntu-20.04 | |||
vmImage: ubuntu-22.04 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is also updating some of the dependencies to 22.04, which feels like a bigger change than Python 3.10. Can we describe that in the PR title, and changelog if necessary?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should have only been done on CI jobs that used Python (3.8 but now 3.10) but do not make use of any of our containers. In other words, it's not a user-facing change, but simply for us to use 22.04 for a few CI agents. I'll reflect that in the PR description.
This is currently blocked by the GitHub Pages job as Sphinx doesn't work with Python 3.10 because of python-babel/babel#990. I see two options:
|
@@ -9,5 +9,5 @@ jobs: | |||
clean: true | |||
fetchDepth: 1 | |||
|
|||
- script: python3.8 scripts/extract-release-notes.py --target-git-version | |||
- script: python3.10 scripts/extract-release-notes.py --target-git-version |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we ought to switch to calling python3
everywhere, and communicate the version requirement through https://packaging.python.org/en/latest/guides/distributing-packages-using-setuptools/#python-requires
Wherever we can, using a shebang line or setuptools entry points would be nicer too, to avoid having to specify which python, now that 2.x is thoroughly obsolete.
@@ -1,3 +1,10 @@ | |||
- name: Add Python repository |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am confused by this, doesn't 22.04 ship with 3.10? If so, why do we need the ppa?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR doesn't update the base container image to 22.04, and only updates Python to 3.10. Updating our container images to 22.04 will be a bigger change (in a separate PR) which cannot be completed just yet because of the lack of Open Enclave packages on 22.04.
As per the update on #5291, we will not do this as there are no tangible benefits and we will remain on Ubuntu 20.04 for now. |
This is part of the upgrade to Ubuntu 22.04 for SNP/virtual builds, where
python3.10
is available viapip
by default.The couple of Ubuntu hosted CI executors are also upgraded to Ubuntu 22.04 so that
python3.10
is available by default.